\subsection{The Scenario}
\label{sect:scenario}

Banana Beans is an espresso machine repair company that services machines in Melbourne venues and businesses. The company operates their own IP PBX on their private network. At their head office in Melbourne there are three separate Asterisk servers to handle calls made and received by each department in the company.

The company places high importance on communication efficiency and customer service, so they would like to monitor their PBX closely. They are particularly interested in knowing how often calls occur, who is making calls and the average call duration. In addition they need to know how well their servers are coping with load so that they can determine how much to invest in new hardware. Currently each Asterisk server provides 9 channels to it's department. Due to a growing number of customers in Geelong, Banana Beans plans to establish a Geelong office in the future.

\subsection{Simulation of the scenario}
The Banana Beans IP PBX was implemented under lab conditions to analyse and test the performance of LAMS. A small network was implemented using hardware with minimal specifications as outlined in Table \ref{tab:specs}.

\begin{table}[h]
\centering
	\begin{tabular}{ | l | l | }
	\hline
	\multicolumn{2}{|c|}{\textbf{Host LAMS}} \\ 
	\hline
	OS & FreeBSD 7.0\\
	CPU & Intel Celeron 2.40GHz \\
	Memory & 512 MB \\
	\hline
	\multicolumn{2}{|c|}{\textbf{Host PBX}} \\ 
	\hline
	OS & FreeBSD 7.0\\
	CPU & Intel Celeron 2.80GHz \\
	Memory & 1024 MB \\
	\hline
	\end{tabular}
\caption{Machine Specifications}
\label{tab:specs}
\end{table}

The prototype network is shown in Figure \ref{fig:protoNet}. At the core of this network are two hosts. Host LAMS is the LAMS virtual world server, and the central collection point for statistics. Host PBX emulates the three Melbourne VoIP servers which are monitored by LAMS. Refer to Section \ref{sect:tech_overview} for the technical details of the implementation. 

\begin{figure}[ht]
\centering
\includegraphics[width=5in]{diagrams/BananaScenario.pdf}
\caption{The Prototype Network}
\label{fig:protoNet}
\end{figure}

\FloatBarrier

\subsection{The LAMS Virtual World} 

The Banana Beans scenario has been transferred to the LAMS three level hierarchy.

The Service Summary level of the virtual world is a map of Victoria as shown in Figure \ref{fig:shotSumm}. Two entities are placed on this map representing summaries of the VoIP services provided in the companies two geographical locations, Melbourne and Geelong. The shape of entities are reminiscent of asterisks, playing on the idea that this company is using the Asterisk PBX software. The user can dive into either of these entities to access the Server and Telephony level.

The Server and Telephony level for Melbourne has a three-armed platform hovering over a map of Melbourne as in Figure \ref{fig:shotServ}. On each arm of the platform resides a pair of entities, and each pair represents one physical VoIP server. The asterisk-shaped entity conveys the metrics of the Asterisk service that is running on the server, for example the current number of calls and average call duration. The pyramid entity represents the metrics of the server, such as the incoming data rate and CPU usage. The user can dive into an Asterisk entities to access the Client level.

The Client level is shown in Figure \ref{fig:shotClien}. The nine telephone entities represent the nine voice channels that a single VoIP server provides.

\begin{figure}[ht]
\centering
\includegraphics[width=10cm]{diagrams/shot_service_summary.png}
\caption{LAMS Virtual World, Service Summary Level}
\label{fig:shotSumm}
\end{figure}

\begin{figure}[ht]
\centering
\includegraphics[width=10cm]{diagrams/shot_servers.png}
\caption{LAMS Virtual World, Server and Telephony Level}
\label{fig:shotServ}
\end{figure}


\begin{figure}[ht]
\centering
\includegraphics[width=10cm]{diagrams/shot_clients.png}
\caption{LAMS Virtual World, Client Level}
\label{fig:shotClien}
\end{figure}

\FloatBarrier
\subsection{User Experience}

When users connect to the LAMS server with their LAMS clients, they will be immersed in the LAMS virtual world. Users can move around the world with complete freedom. Lower levels are accessed by diving into entities and upper levels are accessed by moving up towards the "roof".

Metrics from the servers are mapped to the entities in the virtual world. The critical metrics of the system are represented as visual characteristics on the virtual entities, refer to Table \ref{table:metrics}. This conveys the critical information to users as quickly and intuitively as possible.

\begin{table}
\centering
\begin{tabular}{|l|l|l|}
\hline
\multicolumn{3}{|c|}{\textbf{Level 1 Service Summary}} \\ 
\hline
Cluster entity 	& Bytes In & Bounce height \\ 
 		& Current Calls & Spin rate \\
\hline
\multicolumn{3}{|c|}{\textbf{Level 2 Servers}} \\ 
\hline
Server entity 	& CPU Usage & Spin rate \\ 
 		& Bytes In & Bounce height \\ 
 		& Memory Usage & Scale \\ 
\hline
Asterisk entity	& Num Current Calls & Spin rate \\
		& Avg Call Duration & Bounce rate \\
\hline
\multicolumn{3}{|c|}{\textbf{Level 3 Clients}} \\ 
\hline
Client entity	& In Call & Spin rate\\
\hline
\end{tabular}

\caption{Visualised Metrics in the LAMS virtual world}
\label{table:metrics}
\end{table}

Users are provided with two tools to aid in monitoring, the Inspector tool and the Host Mover. 

When an entity is "shot" with the Inspector tool a detailed text description of the entity apears in an information window. This allows users to access more detailed and exact information than is given by observing the visual characteristics of an entity. For example, an administrator notices that an Asterisk entity is behaving strangely as shown in Figure \ref{fig:shotProb}. The colour of the entity alerts the administrator that there is a problem, and  its movement indicates that this PBX is very busy. The administrator uses the Inspector to view more information about the PBX as shown in Figure \ref{fig:shotProbInfo}.

\begin{figure}[ht]
\centering
\includegraphics[width=10cm]{diagrams/shot_prob.png}
\caption{An anomalous Asterisk entity}
\label{fig:shotProb}
\end{figure}

\begin{figure}[ht]
\centering
\includegraphics[width=10cm]{diagrams/shot_prob_info.png}
\caption{The Inspector information window}
\label{fig:shotProbInfo}
\end{figure}

The Host Mover tool allows administrator to pick up entities and put them down in other locations. This is a useful monitoring activity becuase administrators can group entites of interest together, highlight the importance of an entity through its placement and rearrange entities however they like to improve the efficiency and effectiveness of monitoring.

Additional tools which allow administrator to carry out management tasks, such as restarting servers and terminating calls are included in the LAMS design specification. However we have not implemented any of these management tools for the prototype.

Administrators can interact with each other. When multiple users are connected inside the LAMS virtual world they can all see each other. Text messages can be broadcast to other users via the messaging features built into the OpenArena game engine as shown in \ref{fig:shotCollab}.

\begin{figure}[ht]
\centering
\includegraphics[width=10cm]{diagrams/shot_collaboration.png}
\caption{Collaboration with other VoIP Administrators}
\label{fig:shotCollab}
\end{figure}

\FloatBarrier
